home *** CD-ROM | disk | FTP | other *** search
/ Chip 2006 July / CHIP 2006-07.2.iso / program / web_gelistirme / easyphp1-7_setup.exe / {app} / phpmyadmin / libraries / defines.lib.php < prev    next >
Encoding:
PHP Script  |  2003-09-07  |  4.2 KB  |  110 lines

  1. <?php
  2. /* $Id: defines.lib.php,v 1.46 2003/07/09 08:57:20 nijel Exp $ */
  3. // vim: expandtab sw=4 ts=4 sts=4:
  4.  
  5. /**
  6.  * DEFINES VARIABLES & CONSTANTS
  7.  * Overview:
  8.  *    PMA_MYSQL_INT_VERSION    (int)    - eg: 32339 instead of 3.23.39
  9.  *    PMA_USR_OS               (string) - the plateform (os) of the user
  10.  *    PMA_USR_BROWSER_AGENT    (string) - the browser of the user
  11.  *    PMA_USR_BROWSER_VER      (double) - the version of this browser
  12.  */
  13.  
  14. // MySQL Version
  15. if (!defined('PMA_MYSQL_INT_VERSION') && isset($userlink)) {
  16.     if (!empty($server)) {
  17.         $result = PMA_mysql_query('SELECT VERSION() AS version');
  18.         if ($result != FALSE && @mysql_num_rows($result) > 0) {
  19.             $row   = PMA_mysql_fetch_array($result);
  20.             $match = explode('.', $row['version']);
  21.         } else {
  22.             $result = @PMA_mysql_query('SHOW VARIABLES LIKE \'version\'');
  23.             if ($result != FALSE && @mysql_num_rows($result) > 0){
  24.                 $row   = PMA_mysql_fetch_row($result);
  25.                 $match = explode('.', $row[1]);
  26.             }
  27.         }
  28.     } // end server id is defined case
  29.  
  30.     if (!isset($match) || !isset($match[0])) {
  31.         $match[0] = 3;
  32.     }
  33.     if (!isset($match[1])) {
  34.         $match[1] = 21;
  35.     }
  36.     if (!isset($match[2])) {
  37.         $match[2] = 0;
  38.     }
  39.  
  40.     if(!isset($row)) {
  41.         $row['version'] = '3.21.0';
  42.     }
  43.  
  44.     define('PMA_MYSQL_INT_VERSION', (int)sprintf('%d%02d%02d', $match[0], $match[1], intval($match[2])));
  45.     define('PMA_MYSQL_STR_VERSION', $row['version']);
  46.     unset($match);
  47. }
  48.  
  49.  
  50. // Determines platform (OS), browser and version of the user
  51. // Based on a phpBuilder article:
  52. //   see http://www.phpbuilder.net/columns/tim20000821.php
  53. if (!defined('PMA_USR_OS')) {
  54.     // loic1 - 2001/25/11: use the new globals arrays defined with
  55.     // php 4.1+
  56.     if (!empty($_SERVER['HTTP_USER_AGENT'])) {
  57.         $HTTP_USER_AGENT = $_SERVER['HTTP_USER_AGENT'];
  58.     } else if (!empty($HTTP_SERVER_VARS['HTTP_USER_AGENT'])) {
  59.         $HTTP_USER_AGENT = $HTTP_SERVER_VARS['HTTP_USER_AGENT'];
  60.     } else if (!isset($HTTP_USER_AGENT)) {
  61.         $HTTP_USER_AGENT = '';
  62.     }
  63.  
  64.     // 1. Platform
  65.     if (strstr($HTTP_USER_AGENT, 'Win')) {
  66.         define('PMA_USR_OS', 'Win');
  67.     } else if (strstr($HTTP_USER_AGENT, 'Mac')) {
  68.         define('PMA_USR_OS', 'Mac');
  69.     } else if (strstr($HTTP_USER_AGENT, 'Linux')) {
  70.         define('PMA_USR_OS', 'Linux');
  71.     } else if (strstr($HTTP_USER_AGENT, 'Unix')) {
  72.         define('PMA_USR_OS', 'Unix');
  73.     } else if (strstr($HTTP_USER_AGENT, 'OS/2')) {
  74.         define('PMA_USR_OS', 'OS/2');
  75.     } else {
  76.         define('PMA_USR_OS', 'Other');
  77.     }
  78.  
  79.     // 2. browser and version
  80.     // (must check everything else before Mozilla)
  81.  
  82.     if (ereg('Opera(/| )([0-9].[0-9]{1,2})', $HTTP_USER_AGENT, $log_version)) {
  83.         define('PMA_USR_BROWSER_VER', $log_version[2]);
  84.         define('PMA_USR_BROWSER_AGENT', 'OPERA');
  85.     } else if (ereg('MSIE ([0-9].[0-9]{1,2})', $HTTP_USER_AGENT, $log_version)) {
  86.         define('PMA_USR_BROWSER_VER', $log_version[1]);
  87.         define('PMA_USR_BROWSER_AGENT', 'IE');
  88.     } else if (ereg('OmniWeb/([0-9].[0-9]{1,2})', $HTTP_USER_AGENT, $log_version)) {
  89.         define('PMA_USR_BROWSER_VER', $log_version[1]);
  90.         define('PMA_USR_BROWSER_AGENT', 'OMNIWEB');
  91.     //} else if (ereg('Konqueror/([0-9].[0-9]{1,2})', $HTTP_USER_AGENT, $log_version)) {
  92.     // Konqueror 2.2.2 says Konqueror/2.2.2
  93.     // Konqueror 3.0.3 says Konqueror/3
  94.     } else if (ereg('(Konqueror/)(.*)(;)', $HTTP_USER_AGENT, $log_version)) {
  95.         define('PMA_USR_BROWSER_VER', $log_version[2]);
  96.         define('PMA_USR_BROWSER_AGENT', 'KONQUEROR');
  97.     } else if (ereg('Mozilla/([0-9].[0-9]{1,2})', $HTTP_USER_AGENT, $log_version)
  98.                && ereg('Safari/([0-9]*)', $HTTP_USER_AGENT, $log_version2)) {
  99.         define('PMA_USR_BROWSER_VER', $log_version[1] . '.' . $log_version2[1]);
  100.         define('PMA_USR_BROWSER_AGENT', 'SAFARI');
  101.     } else if (ereg('Mozilla/([0-9].[0-9]{1,2})', $HTTP_USER_AGENT, $log_version)) {
  102.         define('PMA_USR_BROWSER_VER', $log_version[1]);
  103.         define('PMA_USR_BROWSER_AGENT', 'MOZILLA');
  104.     } else {
  105.         define('PMA_USR_BROWSER_VER', 0);
  106.         define('PMA_USR_BROWSER_AGENT', 'OTHER');
  107.     }
  108. } // $__PMA_DEFINES_LIB__
  109. ?>
  110.